#include <ESP8266WiFi.h>
#include <ESP8266WiFiMulti.h>
#include <ESP8266WebServer.h>

ESP8266WiFiMulti wifiMulti; //用于管理多个WiFi接入点。

ESP8266WebServer esp8266_server(80);  //是Web服务器的实例，监听80端口。

void setup(void){
  Serial.begin(9600);    //初始化串行通信

  wifiMulti.addAP("CMCC-6Q92","bmbvkhi3");
  //wifiMulti.addAP("wifi名", "密码");  可存储多个wifi，并连接信号最强的
  //wifiMulti.addAP("WiFi名", "密码");

  int i = 0;
  while(wifiMulti.run() != WL_CONNECTED){
    delay(1000);
    Serial.print(i++);Serial.print(' ');
  }

  Serial.println('\n');
  Serial.print("连接中");
  Serial.println(WiFi.SSID());
  Serial.print("IP地址是:");
  Serial.println(WiFi.localIP());

  esp8266_server.begin();        //启动Web服务器，并注册一个处理未找到页面的回调函数。
  esp8266_server.on("/",handleRoot);
  esp8266_server.onNotFound(handleNotFound);

  Serial.println("HTTP esp8266_server 启动");
}

void loop(void){
  esp8266_server.handleClient();  //循环调用 esp8266_server.handleClient() 来处理客户端请求。
}

void handleRoot(){      //当客户端请求根URL（即HTTP GET请求到/）时，发送一个欢迎消息。
  esp8266_server.send(200,"text/html; charset=utf-8","欢迎来到 ESP8266");
}

void handleNotFound(){      //当请求的URL未被注册的回调函数处理时，发送404错误消息。。                                    
  esp8266_server.send(404, "text/plain", "404: Not found"); 
}





